The present invention relates generally to a receiver adapted to receive a spread spectrum signal in Global Positioning System (GPS)/NAVSTAR, which receiver will be hereafter referred to as a "GPS receiver". More specifically, the invention relates to a circuit for correcting the phase shift of a locally derived Gold code relative to the phase of a Gold code sequence received from a satellite.
There is presently under development a position detection system, referred to as NAVSTAR Global Positioning System, wherein a constellation of eighteen orbiting satellites transmit pseudo-random ranging signals (hereafter referred to as "PRN signals") from which users with appropriate equipment can obtain three dimensional location, velocity and timing information anywhere on or near the surface of the Earth. The details of the NAVSTAR/GPS are given in "NAVIGATION", Journal of the Institute of Navigation, Volume 25, Number 2, December, 1978. In this system which will eventually be put into operation, the eighteen satellites will be deployed in circular 10,900-nautical-mile orbits in three mutually-inclined planes. A minimum of four satellites will be in twelve-hour orbits and the position of each satellite at any time will be precisely known. The longitude, latitude and altitude of any point close to Earth, with respect of the center of the Earth can be calculated from the propagation times of electromagnetic signals from four of the satellites to that point.
A signal about a single center frequency from each visible satellite will be received by a user terminal at a point close to Earth to measure propagation times of the electromagnetic signals transmitted by the satellites. The satellites from which the signals originate are identified by modulating the signal transmitted from each satellite with pseudo-random coded signals. The GPS system will operate in two modes simultaneously. In one mode, referred to as the clear/acquisition (C/A) mode, the PRN signal is a Gold code sequence that is repeated once every millisecond to enable the position of the receiver responsive to the signal transmitted from four of the satellites to be determined to an accuracy of 100 meters. In a second mode, referred to as the precise or protected (P) mode, pseudo-random codes are transmitted with sequences that are 7-days long, enabling the user terminal position to be determined to an accuracy of better than 10 meters.
It should be noted that, throughout the following disclosure, the word "Gold code" generally means the PRN signal used in C/A mode but may also refers the pseudo-random code used in P mode.
When computing the user terminal position, the receiver will operate in three modes, viz, signal acquisition, signal tracking and position fixing. In the acquisition mode, the receiver must know, approximately, its location and have available a recent version of the GPS almanac. For acquisition, Doppler estimates must then be computed for the subset of GPS satellites with the best geometry, i.e., the four satellites with the greatest elevation, typically above 20.degree. as observed by the given terminal. This leaves the GPS demodulator with a GPS carrier frequency uncertainty of several hundred hertz. For the receiver to generate locally a carrier reference to this accuracy, however, requires an oven-stabilized L-Band synthesizer. To enable the receiver to separate the C/A signals received from the different satellites, the receiver also contains a number of different Gold code reference sources corresponding to the number of satellites in the constellation. The locally derived code and carrier references are cross-correlated with received GPS signals over one or more Gold code sequence intervals. The receiver shifts the phase of the locally derived Gold code sequence on a chip-by-chip basis and within each chip in 0.5-1.0 microsecond steps, spanning one millisecond code periods for the C/A code until the maximum cross-correlation is obtained. The chipping rate of a pseudo-random sequence is the rate at which the individual pulses in the sequence are derived and therefore is equal to the code repetition rate divided by the number of chips in the code. Each pulse in the code is referred to as a chip.
In the tracking mode, code delay is tracked continuously and an aligned or "punctual" code stream generated. This is implemented with either a delay lock loop or by means of the tau-dither technique. In either case, the result is a continuously tracked code generator with delay error on the order of 0.1 microsecond. Secondly, initial Doppler uncertainty must be further reduced. This is done by stepping the frequency synthesizer and measuring the correlator output. Once the Doppler uncertainty is reduced to 10-20 Hz, the carrier phase and the raw GPS data messages are recovered using a Costas loop and the aforementioned punctual code.
After four locally derived Gold code sequences are locked in phase with the Gold code sequences received from the satellites in the field of view of the receiver, the position, velocity and time associated with the receiver as well as other variables of interest can, upon further local processing of the GPS data messages, be determined. Position accuracy may be obtained to about 100 meters. This data processing requires storage in the terminal of ephemeris parameters, updated hourly, together with a software model for the GPS satellite orbits, to allow computation in real time of satellite coordinates for correspondence with time of arrival of GPS satellite-generated pseudo-range data.
In such GPS receivers, the Gold code sequences transmitted by the different satellites are arranged so that a maximum cross-correlation product between any two of them is about 65, whereas the autocorrelation product of an internal Gold code generator which produces the local Gold code sequence and the Gold code sequence transmitted from one of the satellite is 1023. The correlation value is defined, for this purpose, as the number of identical bits in a 1023-bit epoch of a Gold code sequence. When the phase of a local Gold code generator is adjusted so that the maximum cross-correlation value is derived, the locally derived Gold code sequence has the same phase as the Gold code sequence that is coupled to receiver, whereby the time of the local code can be used to help derive the position of the receiver.
The GPS receivers use conventional delay-locked loops to adjust the phase of the local Gold code generator. A delay-locked loop comprises a correlation circuit, a phase error derivation circuit, a voltage-controlled oscillator and the local Gold code generator. The correlation circuit produces a correlation output when the local Gold code sequence from the local Gold code generator correlates well with the Gold code sequence from the satellite. The phase error derivation circuit responds to this correlation output by outputting a phase error signal. The voltage-controlled oscillator is controlled by a clock signal with a variable oscillation frequency related to the phase error signal. This holds the two Gold codes in phase.
In such conventional GPS receivers, since the controlling oscillator in a loop which controls the local Gold code generator based on the phase error between the Gold code sequence received from the satellite and the local Gold code derived by the local Gold code generator, which loop will be referred to as the "PN-locking loop", is made up of analog circuitry, such as a voltage-controlled oscillator, it prevents full integration of the circuitry of the GPS receiver. Therefore, it is desired to implement the PN-locking loop solely in digital circuitry. In such digital circuitry, numerically controlled oscillator (NCO) may be employed. However, if an NCO were employed in the PN-locking loop, delicate control of the local Gold code generator would be impossible. For instance, assuming the oscillation frequency of the NCO is f.sub.s, phase control at a precision finer than 1/f.sub.s would be impossible.
Consequently, although it is known that digital circuitry has greater voltage stability and higher reliability, it has been considered impossible to employ digital circuitry in the PN-locking loop due to the lower accuracy of synchronization and propagation time measurement than with conventional analog circuitry.